@@ -4,6 +4,7 @@ from curtail_uuid import CurtailUUID  | 
            ||
| 4 | 4 | 
                from django.contrib.auth.hashers import check_password, make_password  | 
            
| 5 | 5 | 
                from django.contrib.auth.models import Group, User  | 
            
| 6 | 6 | 
                from django.db import transaction  | 
            
| 7 | 
                +from ipaddr import client_ip  | 
            |
| 7 | 8 | 
                from logit import logit  | 
            
| 8 | 9 | 
                from rest_framework import viewsets  | 
            
| 9 | 10 | 
                from TimeConvert import TimeConvert as tc  | 
            
                @@ -13,7 +14,6 @@ from account.serializers import GroupSerializer, LensmanInfoSerializer, UserInfo  | 
            ||
| 13 | 14 | 
                from operation.models import GuestEntranceControlInfo  | 
            
| 14 | 15 | 
                from utils.error.errno_utils import LensmanStatusCode, UserStatusCode  | 
            
| 15 | 16 | 
                from utils.error.response_utils import response  | 
            
| 16 | 
                -from utils.ip_utils import get_client_ip  | 
            |
| 17 | 17 | 
                from utils.redis.rguest import get_guest_entrance_control  | 
            
| 18 | 18 | 
                from utils.redis.rprofile import set_profile_info  | 
            
| 19 | 19 | 
                from utils.version_utils import is_version_match  | 
            
                @@ -56,7 +56,7 @@ def user_signup_api(request):  | 
            ||
| 56 | 56 | 
                return response(UserStatusCode.USERNAME_HAS_REGISTERED)  | 
            
| 57 | 57 | 
                 | 
            
| 58 | 58 | 
                # 判断 user_id 是否存在并且为分配用户,如果存在并且为分配用户,则直接在该帐户上更新,否则则直接创建帐户  | 
            
| 59 | 
                - signup_ip, signup_at = get_client_ip(request), tc.utc_datetime()  | 
            |
| 59 | 
                + signup_ip, signup_at = client_ip(request), tc.utc_datetime()  | 
            |
| 60 | 60 | 
                 | 
            
| 61 | 61 | 
                try:  | 
            
| 62 | 62 | 
                user = UserInfo.objects.select_for_update().get(user_id=user_id)  | 
            
                @@ -96,7 +96,7 @@ def user_login_api(request):  | 
            ||
| 96 | 96 | 
                except UserInfo.DoesNotExist:  | 
            
| 97 | 97 | 
                return response(UserStatusCode.USER_NOT_FOUND)  | 
            
| 98 | 98 | 
                 | 
            
| 99 | 
                - login_ip, login_at = get_client_ip(request), tc.utc_datetime()  | 
            |
| 99 | 
                + login_ip, login_at = client_ip(request), tc.utc_datetime()  | 
            |
| 100 | 100 | 
                 | 
            
| 101 | 101 | 
                if not check_password(password, user.password):  | 
            
| 102 | 102 | 
                UserLoginLogInfo.objects.create(  | 
            
                @@ -156,7 +156,7 @@ def user_wx_authorize_api(request):  | 
            ||
| 156 | 156 | 
                # unionid 不存在  | 
            
| 157 | 157 | 
                # 判断 user_id 是否存在并且为分配用户,如果存在并且为分配用户,则直接在该帐户上更新,否则则直接创建帐户  | 
            
| 158 | 158 | 
                 | 
            
| 159 | 
                - signup_ip, signup_at = get_client_ip(request), tc.utc_datetime()  | 
            |
| 159 | 
                + signup_ip, signup_at = client_ip(request), tc.utc_datetime()  | 
            |
| 160 | 160 | 
                 | 
            
| 161 | 161 | 
                try:  | 
            
| 162 | 162 | 
                user = UserInfo.objects.select_for_update().get(user_id=user_id)  | 
            
                @@ -8,6 +8,7 @@ from django.conf import settings  | 
            ||
| 8 | 8 | 
                from django.db import transaction  | 
            
| 9 | 9 | 
                from django.shortcuts import render  | 
            
| 10 | 10 | 
                from django_q.tasks import async  | 
            
| 11 | 
                +from ipaddr import client_ip  | 
            |
| 11 | 12 | 
                from logit import logit  | 
            
| 12 | 13 | 
                from rest_framework import viewsets  | 
            
| 13 | 14 | 
                from TimeConvert import TimeConvert as tc  | 
            
                @@ -18,7 +19,6 @@ from photo.models import PhotosInfo  | 
            ||
| 18 | 19 | 
                from photo.serializers import PhotosInfoSerializer  | 
            
| 19 | 20 | 
                from utils.error.errno_utils import LensmanStatusCode, PhotoStatusCode  | 
            
| 20 | 21 | 
                from utils.error.response_utils import response  | 
            
| 21 | 
                -from utils.ip_utils import get_client_ip  | 
            |
| 22 | 22 | 
                from utils.redis.connect import r  | 
            
| 23 | 23 | 
                from utils.redis.rgroup import get_group_info, set_group_info, set_group_users_info  | 
            
| 24 | 24 | 
                from utils.redis.rkeys import (GROUP_LAST_PHOTO_PK, GROUP_USERS_DELETED_SET, GROUP_USERS_PASSED_SET,  | 
            
                @@ -123,7 +123,7 @@ def session_join_api(request):  | 
            ||
| 123 | 123 | 
                     user, user_created = UserInfo.objects.get_or_create(user_id=user_id, defaults={
               | 
            
| 124 | 124 | 
                'user_id': CurtailUUID.uuid(UserInfo, 'user_id'),  | 
            
| 125 | 125 | 
                'user_status': UserInfo.ASSIGN,  | 
            
| 126 | 
                - 'assign_ip': get_client_ip(request),  | 
            |
| 126 | 
                + 'assign_ip': client_ip(request),  | 
            |
| 127 | 127 | 
                'assign_at': tc.utc_datetime(),  | 
            
| 128 | 128 | 
                })  | 
            
| 129 | 129 | 
                user_id = user.user_id  | 
            
                @@ -9,6 +9,7 @@ TimeConvert==1.3.12  | 
            ||
| 9 | 9 | 
                cryptography==1.5.2  | 
            
| 10 | 10 | 
                django-curtail-uuid==1.0.0  | 
            
| 11 | 11 | 
                django-detect==1.0.5  | 
            
| 12 | 
                +django-ip==1.0.0  | 
            |
| 12 | 13 | 
                django-json-response==1.1.4  | 
            
| 13 | 14 | 
                django-logit==1.0.6  | 
            
| 14 | 15 | 
                django-multidomain==1.1.4  | 
            
                @@ -1,10 +0,0 @@  | 
            ||
| 1 | 
                -# -*- coding: utf-8 -*-  | 
            |
| 2 | 
                -  | 
            |
| 3 | 
                -  | 
            |
| 4 | 
                -def get_client_ip(request):  | 
            |
| 5 | 
                -    x_forwarded_for = request.META.get('HTTP_X_FORWARDED_FOR')
               | 
            |
| 6 | 
                - if x_forwarded_for:  | 
            |
| 7 | 
                -        ip = x_forwarded_for.split(',')[0]
               | 
            |
| 8 | 
                - else:  | 
            |
| 9 | 
                -        ip = request.META.get('REMOTE_ADDR')
               | 
            |
| 10 | 
                - return ip  |